home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 2 / Atari Mega Archive CD - Volume 2.iso / minix / up1510b.tgz / up1510b / include / time.h < prev    next >
C/C++ Source or Header  |  1990-07-21  |  2KB  |  68 lines

  1. /* The <time.h> header is used by the procedures that deal with time.
  2.  * Handling time is surprisingly complicated, what with GMT, local time
  3.  * and other factors.  Although the Bishop of Ussher (1581-1656) once
  4.  * calculated that based on the Bible, the world began on 12 Oct. 4004 BC
  5.  * at 9 o'clock in the morning, in the UNIX world time begins at midnight, 
  6.  * 1 Jan. 1970 GMT.  Before that, all was NULL and (void).
  7.  */
  8.  
  9. #ifndef _TIME_H
  10. #define _TIME_H
  11.  
  12. #define CLOCKS_PER_SEC    60    /* MINIX always uses 60 Hz, even in Europe */
  13.  
  14. #ifdef _POSIX_SOURCE
  15. #define CLK_TCK CLOCKS_PER_SEC    /* obsolete name for CLOCKS_PER_SEC */
  16. #endif
  17.  
  18. #define NULL    ((void *)0)
  19.  
  20. #ifndef _SIZE_T
  21. #define _SIZE_T
  22. typedef unsigned int size_t;
  23. #endif
  24.  
  25. #ifndef _TIME_T
  26. #define _TIME_T
  27. typedef long time_t;        /* time in sec since 1 Jan 1970 0000 GMT */
  28. #endif
  29.  
  30. #ifndef _CLOCK_T
  31. #define _CLOCK_T
  32. typedef long clock_t;        /* time in ticks since process started */
  33. #endif
  34.  
  35. struct tm {
  36.   int tm_sec;            /* seconds after the minute [0, 59] */
  37.   int tm_min;            /* minutes after the hour [0, 59] */
  38.   int tm_hour;            /* hours since midnight [0, 23] */
  39.   int tm_mday;            /* day of the month [1, 31] */
  40.   int tm_mon;            /* months since January [0, 11] */
  41.   int tm_year;            /* years since 1900 */
  42.   int tm_wday;            /* days since Sunday [0, 6] */
  43.   int tm_yday;            /* days since January 1 [0, 365] */
  44.   int tm_isdst;            /* Daylight Saving Time flag */
  45. };
  46.  
  47. /* Function Prototypes. */
  48. #ifndef _ANSI_H
  49. #include <ansi.h>
  50. #endif
  51.  
  52. _PROTOTYPE( clock_t clock, (void)                    );
  53. _PROTOTYPE( double difftime, (time_t _time1, time_t _time0)        );
  54. _PROTOTYPE( time_t mktime, (struct tm *_timeptr)            );
  55. _PROTOTYPE( time_t time, (time_t *_timeptr)                );
  56. _PROTOTYPE( char *asctime, (const struct tm *_timeptr)            );
  57. _PROTOTYPE( char *ctime, (const time_t *_timer)            );
  58. _PROTOTYPE( struct tm *gmtime, (const time_t *_timer)            );
  59. _PROTOTYPE( struct tm *localtime, (const time_t *_timer)        );
  60. _PROTOTYPE( size_t strftime, (char *_s, size_t _max, const char *_fmt,
  61.                 const struct tm *_timep)        );
  62.  
  63. #ifdef _POSIX_SOURCE
  64. _PROTOTYPE( void tzset, (void)                        );
  65. #endif
  66.  
  67. #endif /* _TIME_H */
  68.